#!/bin/bash
SCRIPT_HOME=$(cd "$(dirname "$0")"; pwd)
source "$SCRIPT_HOME/common_lib.sh"

# 动态查找配置文件
CONFIG_FILE=$(get_config_file "$1")
ACTION="install"

log_info "=== 开始执行系统任务: ${ACTION^^} ==="
log_info "使用配置文件: $CONFIG_FILE"

if [ ! -f "$CONFIG_FILE" ]; then
    log_err "配置文件未找到"
    exit 1
fi

# 获取所有模块名称
modules=$(jq -r '.modules[].name' "$CONFIG_FILE")

has_error=0

for mod in $modules; do
    if ! exec_module_script "$CONFIG_FILE" "$mod" "$ACTION"; then
        has_error=1
    fi
done

if [ $has_error -eq 0 ]; then
    log_info "=== 系统任务 ${ACTION^^} 全部完成 ==="
else
    log_err "=== 系统任务 ${ACTION^^} 完成，但存在错误，请检查日志 ==="
fi
